package com.teamone.etl.whitelist.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.teamone.etl.whitelist.entity.WhiteList;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * IP白名单(WhiteList)表数据库访问层
 *
 * @author makejava
 * @since 2021-01-20 11:07:18
 */
@Mapper
public interface WhiteListDao extends BaseMapper<WhiteList> {

    /**
     * 查询列表
     * @return 白名单列表
     */
    List<WhiteList> adminWhiteList();
    /**
     * 已启用白名单
     * @return 白名单列表
     */
    List<WhiteList> userWhiteList();

    /**
     * 根据id删除IP白名单
     * @param id 白名单 id
     * @return 是否成功
     */
    int deleteWhiteList(Integer id);
    /**
     * 添加IP白名单
     * @param whiteList 添加对象
     * @return 是否成功
     */
    int addWhiteList(WhiteList whiteList);

    /**
     * 根据id获取对象
     * @param id 地址id
     * @return 是否成功
     */
    WhiteList getWhiteListBuyId(Integer id);
    /**
     * 修改白名单
     * @param whiteList 修改内容
     * @return 是否成功
     */
    int updateWhiteList(WhiteList whiteList);

    /**
     * 启用IP
     * @param id 地址id
     * @return 是否成功
     */
    int updateStart(Integer id);
    /**
     * 禁用IP
     * @param id 地址id
     * @return 是否成功
     */
    int updateStop(Integer id);
    /**
     * 修改IP地址
     * @param whiteList 修改内容
     * @return 是否成功
     */
    int updateIp(WhiteList whiteList);

    /**
     * 添加IP地址
     * @param whiteList ip地址
     * @return 是否成功
     */
    int addIpAddress(WhiteList whiteList);
}